The inventive concepts described herein relate to a storage device, and more particularly, to a storage device in which data is dynamically allocated to be programmed in memory areas, and a program method thereof.
Portable electronic devices such as digital cameras, MP3 players, cellular phones, PDAs, and the like are currently widely used. Flash memory is a nonvolatile memory device and is mainly used in such portable devices because of its low power and high integration characteristics.
Flash memory however has a problem that a write operation unit is not identical to a read operation unit. To solve this problem, software such as a flash translation layer (FTL) which includes an address mapping function is used. The FTL receives a logical address from a host, and translates the received logical address into a physical address. The physical address is the address actually used to access the flash memory.
The FTL stores write data transmitted from a host or internal data in a memory block of the memory device. In particular, in the case that reliability of data is important, such as in the case of meta data, the FTL stores the data in memory blocks having high reliability. The remaining data excluding the meta data is typically stored in memory blocks that have comparatively low reliability, but which can store more data per unit cell. That is, the memory blocks are typically separated and used under different management methods. For instance, the flash memory may include memory blocks managed using a single level cell (SLC) method and memory blocks managed using a multi level cell (MLC) method.
In the case of using memory blocks according to different management methods such as SLC and MLC managing methods, a difference in the lifespan of the memory blocks may occur due to the different management methods. Although the lifespan of memory blocks of a memory device managed using an SLC method may be long enough, the lifespan of memory blocks of the memory device managed using an MLC method may however expire. As a result, the lifespan of the storage device as a whole will expire. That is, a lifespan condition required for a storage device may not be satisfied.